


#ifndef __USER_TYPE_H
#define __USER_TYPE_H



#include <string.h>
#include <stdint.h>


    #define __USER_NOT_VAL 
    #define _USER_TYPE_NOT_TLSR 


 

    


    #ifdef _USER_TYPE_NOT_STM32

        typedef signed char             int8_t;   
        typedef short int               int16_t;  
        typedef int                     int32_t;     
        
        typedef unsigned char           uint8_t;  
        typedef unsigned short int      uint16_t;      
        typedef unsigned int            uint32_t;   

    #endif //_USER_TYPE_NOT_STM32



    #ifdef _USER_TYPE_NOT_SIZE

        typedef unsigned int            size_t;

    #endif //_USER_TYPE_NOT_SIZE




    #ifdef  _USER_TYPE_NOT_TLSR

        typedef signed char             int8;   
        typedef short int               int16;  
        typedef int                     int32;     
        
        typedef unsigned char           uint8;  
        typedef unsigned short int      uint16;      
        typedef unsigned int            uint32;  

        typedef unsigned char           bool;


        #ifndef FALSE
        #define FALSE 	0
        #endif
        #ifndef TRUE
        #define TRUE 	(!FALSE)
        #endif

        #define false 	FALSE
        #define true 	TRUE



    #endif //_USER_TYPE_NOT_TLSR

    





    #ifdef  _USER_TYPE_NOT_51

        typedef signed char             i8;   
        typedef short int               i16;  
        typedef int                     i32;     
        
        typedef unsigned char           u8;  
        typedef unsigned short int      u16;      
        typedef unsigned int            u32;  

    #endif //_USER_TYPE_NOT_51



    #ifdef  _USER_TYPE_NOT_ASM

        typedef signed char             s8;   
        typedef short int               s16;  
        typedef int                     s32;     
        
        typedef unsigned char           u8;  
        typedef unsigned short int      u16;      
        typedef unsigned int            u32;  

    #endif //_USER_TYPE_NOT_51




    #ifndef __USER_NOT_VAL

        #define SCHAR_MIN (-128)
        #define SCHAR_MAX 127

        #define UCHAR_MAX 255

        
        #define S16_MIN (-32768)
        #define S16_MAX 32767

        #define U16_MAX 65535

        
        #define S32_MIN (-2147483648)
        #define S32_MAX 2147483647

        #define U32_MAX 4294967295

    #endif //__USER_NOT_VAL







    typedef union type_un
    {
        uint8_t sum[4];

        uint32_t u32;
        uint16_t u16;
        uint8_t u8;

        int32_t i32;
        int16_t i16;
        int8_t i8;
        void *p;
    }type_un;





#endif  //__USER_TYPE_H























